home *** CD-ROM | disk | FTP | other *** search
/ Skunkware 5 / Skunkware 5.iso / src / Tools / ObjectTcl-1.1 / Makefile.in < prev    next >
Encoding:
Makefile  |  1995-06-30  |  4.7 KB  |  191 lines

  1. # $Id: Makefile.in,v 1.7 1995/05/25 08:25:38 deans Exp $
  2.  
  3. #------------------------------------------------------------------------------
  4. # Configuration options.
  5. #------------------------------------------------------------------------------
  6.  
  7. # Built Source directory for Tcl relative to this directory or root.  Otcl
  8. # currently works with either Tcl 7.3 or Tcl 7.4b3.  This define maybe omitted
  9. # if the other TCL_* defines below are explictly set to the installed
  10. # locations.
  11. TCL_DIR         =       ../tcl-7.3
  12.  
  13. # The location of the Tcl public includes files (tcl.h)
  14. TCL_INCLDIR    =     ${TCL_DIR}
  15.  
  16. # The location of the Tcl private includes file (tclInt.h)
  17. TCL_SRCDIR    =     ${TCL_DIR}
  18.  
  19. # The location of the Tcl library (libtcl.a)
  20. TCL_LIBDIR    =     ${TCL_DIR}
  21.  
  22. # Built Source directory for Tk relative to this directory or root.  Otcl
  23. # currently works with either Tk 3.6 or Tk 4.0b3.  This define maybe omitted
  24. # if the other TK_* defines below are explictly set to the installed
  25. # locations.
  26. TK_DIR          =       ../tk3.6
  27.  
  28.  
  29. # The location of the Tk public includes files (tk.h)
  30. TK_INCLDIR    =     ${TK_DIR}
  31.  
  32. # The location of the Tk library (libtk.a)
  33. TK_LIBDIR    =     ${TK_DIR}
  34.  
  35. # Installation directories
  36. prefix          =       @prefix@
  37. exec_prefix     =       @exec_prefix@
  38.  
  39. BIN_DIR         =       ${exec_prefix}/bin
  40. LIB_DIR         =       ${exec_prefix}/lib
  41. INCL_DIR        =       ${prefix}/include
  42. HTML_DIR        =       ${prefix}/html/otcl
  43.  
  44. CXX        =     @CXX@
  45. CXXFLAGS    =    @CXXFLAGS@ -DOTCL_DP
  46. AR        =     ar
  47. RANLIB        =     @RANLIB@
  48. INSTALL =        @INSTALL@
  49. INSTALL_PROGRAM =    @INSTALL_PROGRAM@
  50. INSTALL_DATA    =    @INSTALL_DATA@
  51. MKDIRS          =    ./mkdirs
  52.  
  53. #------------------------------------------------------------------------------
  54. # Other definitions.
  55. #------------------------------------------------------------------------------
  56.  
  57. CXXINCLUDES    =     -I. \
  58.               -I$(TCL_INCLDIR) \
  59.               -I$(TCL_SRCDIR) \
  60.             -I$(TK_INCLDIR)
  61.  
  62. CDL        =     cdl
  63.  
  64. INSTINCL    =    Otcl.H OtclClass.H OtclError.H OtclObjMgr.H \
  65.                         OtclObject.H OtclPart.H
  66.  
  67. INSTHTML    =       BindingRef.html LangRef.html Overview.html
  68.  
  69. LIB_OBJECTS    =    Otcl.o \
  70.             OtclVarArgs.o \
  71.             OtclClass.o \
  72.             OtclMethod.o \
  73.             OtclAttribute.o \
  74.             OtclObjMgr.o \
  75.             OtclObject.o \
  76.             OtclPart.o \
  77.             OtclFormalArg.o \
  78.             OtclOserver.o
  79.  
  80. OTCLSH_OBJECTS    =    tclAppInit.o
  81.  
  82. TKLIB_OBJECTS    =    tkMain.o
  83.  
  84. TCLLIB_OBJECTS    =    tclMain.o
  85.  
  86. OWISH_OBJECTS    =    tkAppInit.o
  87.  
  88. TEST_OBJECTS    =    Test.o \
  89.             Test_cdl.o \
  90.             TestAppInit.o
  91.  
  92. TEST_HEADERS    =    Test_cdl.H
  93.  
  94. CDL_OBJECTS    =    CdlFile.o \
  95.             CdlItem.o \
  96.             CdlArg.o \
  97.             CdlRtn.o \
  98.             CdlMethod.o \
  99.             cdlMain.o
  100.  
  101. TCL_LIBS    =    -L$(TCL_LIBDIR) -ltcl
  102.  
  103. TK_LIBS        =    -L$(TK_LIBDIR) -ltk
  104.  
  105. X11LIBS        =    @XLIBSW@
  106.  
  107. SYSLIBS        =    @LIBS@ @MATH_LIBS@
  108.  
  109. .SUFFIXES: .cdl .H .C
  110.  
  111. .C.o:
  112.             $(CXX) $(CXXFLAGS) $(CXXINCLUDES) -c $<
  113. .cdl.o:
  114.             $(CDL) -s $< $*.C
  115.             $(CXX) $(CXXFLAGS) $(CXXINCLUDES) -c $*.C
  116.             rm $*.C
  117.  
  118. .cdl.H:
  119.             $(CDL) -h $< $*.H
  120.  
  121. #------------------------------------------------------------------------------
  122. # Rules.
  123. #------------------------------------------------------------------------------
  124.  
  125. all:        libotcl.a cdl otclsh otcltest owish
  126.  
  127. libotcl.a:    $(LIB_OBJECTS) $(TCLLIB_OBJECTS) $(TKLIB_OBJECTS)
  128.         rm -f libotcl.a
  129.         $(AR) cr libotcl.a $(LIB_OBJECTS) $(TCLLIB_OBJECTS) \
  130.             $(TKLIB_OBJECTS)
  131.         $(RANLIB) libotcl.a
  132.  
  133. otclsh:        libotcl.a $(OTCLSH_OBJECTS)
  134.         $(CXX) $(CXXFLAGS) $(CXXINCLUDES) $(LDFLAGS) -o otclsh \
  135.             $(OTCLSH_OBJECTS) libotcl.a $(TCL_LIBS) $(SYSLIBS)
  136.  
  137. owish:        libotcl.a $(OWISH_OBJECTS)
  138.         $(CXX) $(CXXFLAGS) $(CXXINCLUDES) $(LDFLAGS) -o owish \
  139.             $(OWISH_OBJECTS) libotcl.a $(TK_LIBS) \
  140.             $(TCL_LIBS) $(X11LIBS) $(SYSLIBS)
  141.  
  142. otcltest:    libotcl.a $(CDL) $(TEST_HEADERS) $(TEST_OBJECTS)
  143.         $(CXX) $(CXXFLAGS) $(CXXINCLUDES) $(LDFLAGS) -o otcltest \
  144.             $(TEST_OBJECTS) libotcl.a $(TCL_LIBS) $(SYSLIBS)
  145.  
  146. cdl:        $(CDL_OBJECTS)
  147.         $(CXX) $(CXXFLAGS) $(CXXINCLUDES) -o cdl $(CDL_OBJECTS) \
  148.             $(TCL_LIBS) $(SYSLIBS)
  149.  
  150. test: otcltest
  151.         (cd tests; ../otcltest tscript)
  152.  
  153. install:    install-binaries install-html
  154.  
  155. install-binaries: libotcl.a otclsh $(BIN_DIR) $(LIB_DIR) $(INCL_DIR)
  156.     @echo "Installing otclsh"
  157.     @$(INSTALL_PROGRAM) otclsh $(BIN_DIR)/otclsh
  158.     @echo "Installing owish"
  159.     @$(INSTALL_PROGRAM) owish $(BIN_DIR)/owish
  160.     @echo "Installing libotcl.a"
  161.     @$(INSTALL_DATA) libotcl.a $(LIB_DIR)/libotcl.a
  162.     @for i in $(INSTINCL) ; do \
  163.         echo "Installing $$i";\
  164.         $(INSTALL_DATA) $$i $(INCL_DIR)/$$i; \
  165.     done
  166.  
  167. install-html: $(HTML_DIR)
  168.     @for i in $(INSTHTML) ; do \
  169.         echo "Installing $$i"; \
  170.         $(INSTALL_DATA) docs/$$i $(HTML_DIR)/$$i; \
  171.     done
  172.  
  173. $(BIN_DIR):
  174.     ${MKDIRS} $(BIN_DIR)
  175.  
  176. $(LIB_DIR):
  177.     ${MKDIRS} $(LIB_DIR)
  178.  
  179. $(INCL_DIR):
  180.     ${MKDIRS} $(INCL_DIR)
  181.  
  182. $(HTML_DIR):
  183.     ${MKDIRS} $(HTML_DIR)
  184.         
  185. clean:
  186.         rm -f *.o libotcl.a otclsh otcltest cdl core *..dbx *_cdl.C \
  187.         *_cdl.H owish
  188.  
  189. distclean:    clean
  190.         rm -f Makefile config.status config.cache config.log 
  191.